package com.vcc.service.service;

import com.mybatisflex.core.paginate.Page;
import com.mybatisflex.core.service.IService;
import com.vcc.data.entity.AdminParam;
import com.vcc.service.boss.request.adminParam.BossAdminParamUpdateRequest;
import com.vcc.service.boss.response.adminParam.AdminParamVoBoss;

import java.util.List;

public interface AdminParamService extends IService<AdminParam> {

    Page<AdminParamVoBoss> paging(
            Integer pageNumber,
            Integer pageSize,
            String code,
            String name
    );

    Boolean update(BossAdminParamUpdateRequest bossAdminParamUpdateRequest);


    Boolean existsByCode(String code);

    AdminParam getByCode(String code);

    String getValueByCode(String code);

    String getValueByCode(String code, String defaultValue);

    List<AdminParam> listByCodes(List<String> codes);
}
